package com.ruicar.afs.cloud.basic.common.condition;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruicar.afs.cloud.common.modules.contract.enums.BusinessSourceEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author infinity
 * @version 1.0
 * @date 2020/8/11 23:03
 */
@Data
public class ReceiptRecordCondition {
    int pageSize;
    int pageNumber;
    Long id;
    @ApiModelProperty("合同号")
    private String contractNo;
    @ApiModelProperty("收据状态 枚举值：收款成功，撤销审核中，已撤销")
    private String receiptStatus;
    private String[] receiptStatuss;
    /**
     * 审批结果
     */
    @ApiModelProperty("审批结果")
    private String approvalOperating;
    /**
     * 审批意见
     */
    @ApiModelProperty("审批意见")
    private String approvalOpinion;
    /**
     * 原因类型
     */
    @ApiModelProperty("原因类型")
    private String reasonType;
    /**
     * 业务类型;枚举值：合同取消、身份信息变更、联系方式变更、银行卡变更、还款日变更、资产信息变更、对公还款、合同重出、溢缴款退款、延期申请、提前结清、展期
     */
    @ApiModelProperty("业务类型")
    private String contractBusiness;
    /**
     * 处理人员
     */
    @ApiModelProperty("处理人员")
    private String processPerson;
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    @JSONField(
            serializeUsing = com.alibaba.fastjson.serializer.ToStringSerializer.class
    )
    @ApiModelProperty("收据ID")
    private Long receiptId;
    /**
     * 业务来源
     */
    @ApiModelProperty("业务来源")
    private BusinessSourceEnum businessSource;
}
